home *** CD-ROM | disk | FTP | other *** search
- NAME
-
- CompactPlayer
-
- DESCRIPTION
-
- CompactPlayer is a CD Audio player for SCSI CD-ROMs, similar to MCDP,
- YACDP, CDPD, or CDP.
-
- CompactPlayer uses the ClassAct GUI toolkit and is compatible with
- MCDP's CD index files. In fact, MCDP had a heavy influence on
- CompactPlayer, in particular the SCSI routines.
-
- COPYRIGHT AND DISCLAIMER
-
- CompactPlayer is Copyright © 1995 Osma Ahvenlampi
- ClassAct is Copyright © 1995 Phantom Development
-
- COMPACTPLAYER IS PROVIDED "AS IS". BY USING COMPACTPLAYER, YOU ACCEPT
- THE RESPONSIBILITY FOR ANY DAMAGE OR LOSS THAT MAY OCCUR DURING OR
- BECAUSE OF ITS USE, DIRECTLY OR INDIRECTLY. THE FITNESS OF
- COMPACTPLAYER FOR ANY USE OR PURPOSE IS NOT GUARANTEED. THE AUTHOR IS
- NOT, AND CAN NOT BE HELD LIABLE FOR ANYTHING.
-
- CompactPlayer is GIFTWARE. If you like CompactPlayer, please send a
- small gift (a chocolate bar, your own program, $5, or even just a
- postcard) to me. My address is in the end of this document. By doing
- this you encourage further development of quality Amiga programs.
-
- COMPATIBILITY
-
- CompactPlayer has been developed and tested on an Amiga 3000 and
- Toshiba XM3601B, using AmigaOS 3.1. The SCSI chip used was the
- -4PROTO model. Compatibility with other CD-ROM devices is unknown.
-
- Due to notorious incompatibility between various so-called "standard"
- SCSI-2 devices, especially CD-ROMs, it is very likely that this
- program will have problems with some installations. It may even lock
- up the whole SCSI bus, forcing you to reboot. You have been warned.
- However, I hope this works for you, because it IS a rather neat
- little program ;)
-
- USAGE
-
- CompactPlayer understands the following tooltypes or command line
- arguments:
-
- DEVICE The SCSI device driver to use. Default: scsi.device
- UNIT The SCSI ID of the CD-ROM. Default: 6
- PUBSCREEN The screen to open the interface on.
- INDEXPATH The directory where the CD descriptor files reside.
- XPOS,YPOS The initial coordinates of the interface.
- TINYFONT The small proportional font used.
- PANELFONT The nonproportional font used for the status panel.
-
- Other than that, insert a CD, press the "play" button. ;)
-
- The status panel gadget displays the following information:
-
- First line: ("xx xx:xx xx:xx xx:xx xx:xx")
- - The number of tracks on the CD, or the current track when playing.
- - Current playing of this track.
- - Remaining time on this track.
- - Current playing time from the beginning of the CD.
- - Total lenght of the CD.
-
- Second line: The artist name of the CD.
-
- Third line: The CD title or the name of the current track.
-
- Fourth line: a graph displaying the relative lenghts of the tracks
- on the CD, with a plotted line above it displaying the parts that
- have been played.
-
- In the lower right corner is a small icon displaying the current
- status of the player. Possible icons are "play", "stop", "paused",
- empty, and a question mark signifying that CompactPlayer thinks the
- CD tray is ejected. See the note below about the latter.
-
- Below the status panel is a simple row of normal tape deck controls.
- The "rewind" and "fast forward" buttons have two modes. When not
- playing, they will select the track where playing should begin, when
- playing they function as seek buttons, seeking on the CD at 10 times
- normal speed.
-
- On the right is a listview of the CD tracks. Selecting a title will
- make CompactPlayer seek to that track and start playing.
-
- Above the listview are buttons for bringing up the title and program
- editor windows. Unfortunately the program editor is as of now still
- unimplemented, but the title editor exists.
-
- In the title editor you will see two string gadgets for the artist
- and CD names, and below them a listview of the tracks on the CD and a
- string gadget for editing the track titles. Select a track and type
- in the name. After filling all the information about the CD, press
- the Save Titles button to save the titles in a file in the directory
- set with the INDEXPATH tooltype. CompactPlayer will now recognise the
- CD when inserted and display the names of the tracks instead of just
- numbers.
-
- In the menus is available a third window for selecting the device
- used by CompactPlayer to access the CD-ROM. In this window, choose
- the SCSI device to which the CD-ROM is connected, wait a while for
- CompactPlayer to scan the SCSI bus, and then choose the CD-ROM from
- the device list on the right. After this, click on "Use this".
-
- CompactPlayer is also keyboard controllable. The keys are:
-
- Space -- Play/Pause, load tray if ejected.
- Enter -- Stop/Eject
- T -- Open title editor
- Cursor Up -- Select previous track
- Cursor Down -- Select next track
- Cursor Left -- Seek backwards
- Cursor Right -- Seek forwards
-
- CompactPlayer interface can be zoomed to only the panel gadget, or
- iconified completely using the title bar gadgets.
-
- AREXX PORT
-
- CompactPlayer also has an ARexx interface. The commands understood
- are:
-
- PLAY TRACK/N Play (selected track)
- STOP Stop playing
- PAUSE Pause playing
- RESUME Resume playing after a pause
- EJECT Eject tray
- LOAD Load tray
- QUIT Exit CompactPlayer
- ACTIVATE Uniconify CompactPlayer, bring it to front.
- DEACTIVATE Iconify CompactPlayer.
-
- NOTE ABOUT CD TRAY EJECTION
-
- CompactPlayer supports retracting the CD tray when it has been
- ejected. However, to my best knowledge it is not possible to query
- a CD-ROM drive whether the tray is out or not via standard SCSI-2
- commands. Because of this CompactPlayer keeps track of this
- internally, which will not work 100% if you use the manual controls
- on the CD-ROM drive. This means that CompactPlayer could think that
- the tray is out when it is not, and vice versa. For SCSI-2, there
- seems to be no difference between ejected CD tray and empty CD-ROM
- drive. If someone knows more about this, I'd like to hear about it.
-
- AUTHOR
-
- Osma Ahvenlampi <Osma.Ahvenlampi@hut.fi>
-
- Osma Ahvenlampi
- Rekipellontie 2 F 55
- 00940 Helsinki
- Finland
-
- A BLATANT PLUG
-
- Don't forget to check out Voodoo, the definitive Amiga email program.
- A demo version of Voodoo is now available on the World Wide Web at
- http://www.niksula.cs.hut.fi/~oahvenla/voodoo/, and by FTP at
- ftp://ftp.warped.com/pub/amiga/voodoo/.
-
- ANOTHER ADVERTISEMENT
-
- If you're a developer, consider using the ClassAct toolkit for your
- programs! ClassAct makes GUI development a breeze. More information
- is available at http://www.pcnet.com/~caldi or by sending email to
- caldi@pcnet.com.
-
- The source code to CompactPlayer has been included to assist
- evaluating ClassAct. It will not compile without the ClassAct
- developer kit. It is not documented too much, but should be pretty
- easy to read anyhow.
-
- HISTORY
-
- 1.7 Number keys select track.
-
- Utilised the V41 layout.gagdet NoDispose attribute for
- better main window zoom.
-
- Um, what the hell? V40 graphics.library/WritePixelLine8()
- erases the source array while writing it to the rastport?
- Nice feature. Double-caching the source to avoid that
- crap.
-
- Fixed a bug in the status panel gadget that made it die
- on native displays. I only tested it on CyberGraphX...
-
- 1.6 Added a partial cd.device interface. It's very buggy
- though, I wasn't able to abort a play command with it,
- although I tried to follow the autodoc instructions.
- Thus, I didn't finish it.
-
- Localised the interface.
-
- Made the main window zoomable.
-
- Converted the title list editor to use in-place listview
- edit.
-
- Added an ARexx port.
-
- Wasn't setting rastport draw mode in the status panel
- gadget, so some renders didn't work.
-
- Editing disc title doesn't reset status panel when disc
- is playing.
-
- Reset artist and disc titles for new discs.
-
- 1.5 Added a device/unit selection window, iconification, and a
- simple menu.
-
- 1.4 Added SCSI device type checking, fixed another memory free
- problem.
-
- 1.3 Converted to use the ClassAct WindowClass.
-
- 1.2 Was freeing some memory twice, how nasty of me.
-
- 1.1 Eject uses SCSI direct, because TD_EJECT was dangerous with
- some controllers.
-
- Implemented a kludge that retries a play operation until it
- succeeds. At least the Toshiba XM3601B I have has a tendency
- to abort PLAY_AUDIO silently just after a media change.
-